<!DOCTYPE html>

<html>
  <head>
    <meta charset="utf-8">
    
    <title>numpy.npv &mdash; NumPy v1.18 Manual</title>
    
    <link rel="stylesheet" type="text/css" href="../../_static/css/spc-bootstrap.css">
    <link rel="stylesheet" type="text/css" href="../../_static/css/spc-extend.css">
    <link rel="stylesheet" href="../../_static/scipy.css" type="text/css" >
    <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" >
    <link rel="stylesheet" href="../../_static/graphviz.css" type="text/css" >
    
    <script type="text/javascript">
      var DOCUMENTATION_OPTIONS = {
        URL_ROOT:    '../../',
        VERSION:     '1.18.1',
        COLLAPSE_INDEX: false,
        FILE_SUFFIX: '.html',
        HAS_SOURCE:  false
      };
    </script>
    <script type="text/javascript" src="../../_static/jquery.js"></script>
    <script type="text/javascript" src="../../_static/underscore.js"></script>
    <script type="text/javascript" src="../../_static/doctools.js"></script>
    <script type="text/javascript" src="../../_static/language_data.js"></script>
    <script type="text/javascript" src="../../_static/js/copybutton.js"></script>
    <link rel="author" title="About these documents" href="../../about.html" >
    <link rel="index" title="Index" href="../../genindex.html" >
    <link rel="search" title="Search" href="../../search.html" >
    <link rel="top" title="NumPy v1.18 Manual" href="../../index.html" >
    <link rel="up" title="Financial functions" href="../routines.financial.html" >
    <link rel="next" title="numpy.pmt" href="numpy.pmt.html" >
    <link rel="prev" title="numpy.pv" href="numpy.pv.html" > 
  </head>
  <body>
<div class="container">
  <div class="top-scipy-org-logo-header" style="background-color: #a2bae8;">
    <a href="../../index.html">
      <img border=0 alt="NumPy" src="../../_static/numpy_logo.png"></a>
    </div>
  </div>
</div>


    <div class="container">
      <div class="main">
        
	<div class="row-fluid">
	  <div class="span12">
	    <div class="spc-navbar">
              
    <ul class="nav nav-pills pull-left">
        <li class="active"><a href="https://numpy.org/">NumPy.org</a></li>
        <li class="active"><a href="https://numpy.org/doc">Docs</a></li>
        
        <li class="active"><a href="../../index.html">NumPy v1.18 Manual</a></li>
        

          <li class="active"><a href="../index.html" >NumPy Reference</a></li>
          <li class="active"><a href="../routines.html" >Routines</a></li>
          <li class="active"><a href="../routines.financial.html" accesskey="U">Financial functions</a></li> 
    </ul>
              
              
    <ul class="nav nav-pills pull-right">
      <li class="active">
        <a href="../../genindex.html" title="General Index"
           accesskey="I">index</a>
      </li>
      <li class="active">
        <a href="numpy.pmt.html" title="numpy.pmt"
           accesskey="N">next</a>
      </li>
      <li class="active">
        <a href="numpy.pv.html" title="numpy.pv"
           accesskey="P">previous</a>
      </li>
    </ul>
              
	    </div>
	  </div>
	</div>
        

	<div class="row-fluid">
      <div class="spc-rightsidebar span3">
        <div class="sphinxsidebarwrapper">
  <h4>Previous topic</h4>
  <p class="topless"><a href="numpy.pv.html"
                        title="previous chapter">numpy.pv</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="numpy.pmt.html"
                        title="next chapter">numpy.pmt</a></p>
<div id="searchbox" style="display: none" role="search">
  <h4>Quick search</h4>
    <div>
    <form class="search" action="../../search.html" method="get">
      <input type="text" style="width: inherit;" name="q" />
      <input type="submit" value="search" />
      <input type="hidden" name="check_keywords" value="yes" />
      <input type="hidden" name="area" value="default" />
    </form>
    </div>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
        </div>
      </div>
          <div class="span9">
            
        <div class="bodywrapper">
          <div class="body" id="spc-section-body">
            
  <div class="section" id="numpy-npv">
<h1>numpy.npv<a class="headerlink" href="#numpy-npv" title="Permalink to this headline">¶</a></h1>
<dl class="function">
<dt id="numpy.npv">
<code class="sig-prename descclassname">numpy.</code><code class="sig-name descname">npv</code><span class="sig-paren">(</span><em class="sig-param">rate</em>, <em class="sig-param">values</em><span class="sig-paren">)</span><a class="reference external" href="https://github.com/numpy/numpy/blob/v1.18.1/numpy/lib/financial.py#L838-L913"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#numpy.npv" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the NPV (Net Present Value) of a cash flow series.</p>
<div class="deprecated">
<p><span class="versionmodified deprecated">Deprecated since version 1.18: </span><a class="reference internal" href="#numpy.npv" title="numpy.npv"><code class="xref py py-obj docutils literal notranslate"><span class="pre">npv</span></code></a> is deprecated; for details, see NEP 32 <a class="reference internal" href="#r3b2e08cf0480-1" id="id1">[1]</a>.
Use the corresponding function in the numpy-financial library,
<a class="reference external" href="https://pypi.org/project/numpy-financial">https://pypi.org/project/numpy-financial</a>.</p>
</div>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><dl class="simple">
<dt><strong>rate</strong><span class="classifier">scalar</span></dt><dd><p>The discount rate.</p>
</dd>
<dt><strong>values</strong><span class="classifier">array_like, shape(M, )</span></dt><dd><p>The values of the time series of cash flows.  The (fixed) time
interval between cash flow “events” must be the same as that for
which <a class="reference internal" href="numpy.rate.html#numpy.rate" title="numpy.rate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">rate</span></code></a> is given (i.e., if <a class="reference internal" href="numpy.rate.html#numpy.rate" title="numpy.rate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">rate</span></code></a> is per year, then precisely
a year is understood to elapse between each cash flow event).  By
convention, investments or “deposits” are negative, income or
“withdrawals” are positive; <em class="xref py py-obj">values</em> must begin with the initial
investment, thus <em class="xref py py-obj">values[0]</em> will typically be negative.</p>
</dd>
</dl>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><dl class="simple">
<dt><strong>out</strong><span class="classifier">float</span></dt><dd><p>The NPV of the input cash flow series <em class="xref py py-obj">values</em> at the discount
<a class="reference internal" href="numpy.rate.html#numpy.rate" title="numpy.rate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">rate</span></code></a>.</p>
</dd>
</dl>
</dd>
</dl>
<div class="admonition warning">
<p class="admonition-title">Warning</p>
<p><code class="docutils literal notranslate"><span class="pre">npv</span></code> considers a series of cashflows starting in the present (t = 0).
NPV can also be defined with a series of future cashflows, paid at the
end, rather than the start, of each period. If future cashflows are used,
the first cashflow <em class="xref py py-obj">values[0]</em> must be zeroed and added to the net
present value of the future cashflows. This is demonstrated in the
examples.</p>
</div>
<p class="rubric">Notes</p>
<p>Returns the result of: <a class="reference internal" href="#r3b2e08cf0480-2" id="id2">[2]</a></p>
<div class="math">
<p><img src="../../_images/math/efda392f70a68f8628c59861bca01d798260c1b1.svg" alt="\sum_{t=0}^{M-1}{\frac{values_t}{(1+rate)^{t}}}"/></p>
</div><p class="rubric">References</p>
<dl class="citation">
<dt class="label" id="r3b2e08cf0480-1"><span class="brackets"><a class="fn-backref" href="#id1">1</a></span></dt>
<dd><p>NumPy Enhancement Proposal (NEP) 32,
<a class="reference external" href="https://numpy.org/neps/nep-0032-remove-financial-functions.html">https://numpy.org/neps/nep-0032-remove-financial-functions.html</a></p>
</dd>
<dt class="label" id="r3b2e08cf0480-2"><span class="brackets"><a class="fn-backref" href="#id2">2</a></span></dt>
<dd><p>L. J. Gitman, “Principles of Managerial Finance, Brief,” 3rd ed.,
Addison-Wesley, 2003, pg. 346.</p>
</dd>
</dl>
<p class="rubric">Examples</p>
<p>Consider a potential project with an initial investment of $40 000 and
projected cashflows of $5 000, $8 000, $12 000 and $30 000 at the end of
each period discounted at a rate of 8% per period. To find the project’s
net present value:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">rate</span><span class="p">,</span> <span class="n">cashflows</span> <span class="o">=</span> <span class="mf">0.08</span><span class="p">,</span> <span class="p">[</span><span class="o">-</span><span class="mi">40_000</span><span class="p">,</span> <span class="mi">5_000</span><span class="p">,</span> <span class="mi">8_000</span><span class="p">,</span> <span class="mi">12_000</span><span class="p">,</span> <span class="mi">30_000</span><span class="p">]</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">np</span><span class="o">.</span><span class="n">npv</span><span class="p">(</span><span class="n">rate</span><span class="p">,</span> <span class="n">cashflows</span><span class="p">)</span><span class="o">.</span><span class="n">round</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
<span class="go">3065.22267</span>
</pre></div>
</div>
<p>It may be preferable to split the projected cashflow into an initial
investment and expected future cashflows. In this case, the value of
the initial cashflow is zero and the initial investment is later added
to the future cashflows net present value:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">initial_cashflow</span> <span class="o">=</span> <span class="n">cashflows</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">cashflows</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">=</span> <span class="mi">0</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">np</span><span class="o">.</span><span class="n">round</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">npv</span><span class="p">(</span><span class="n">rate</span><span class="p">,</span> <span class="n">cashflows</span><span class="p">)</span> <span class="o">+</span> <span class="n">initial_cashflow</span><span class="p">,</span> <span class="mi">5</span><span class="p">)</span>
<span class="go">3065.22267</span>
</pre></div>
</div>
</dd></dl>

</div>


          </div>
        </div>
          </div>
        </div>
      </div>
    </div>

    <div class="container container-navbar-bottom">
      <div class="spc-navbar">
        
      </div>
    </div>
    <div class="container">
    <div class="footer">
    <div class="row-fluid">
    <ul class="inline pull-left">
      <li>
        &copy; Copyright 2008-2019, The SciPy community.
      </li>
      <li>
      Last updated on Feb 20, 2020.
      </li>
      <li>
      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 2.4.2.
      </li>
    </ul>
    </div>
    </div>
    </div>
  </body>
</html>